<!DOCTYPE html>
<html>
<head>
  <title>Test scrollSubstringToPoint when page is zoomed</title>
  <link rel="stylesheet" type="text/css"
        href="chrome://mochikit/content/tests/SimpleTest/test.css" />

  <script type="application/javascript"
          src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
  <script type="application/javascript"
          src="chrome://mochikit/content/tests/SimpleTest/EventUtils.js"></script>

  <script type="application/javascript"
          src="../common.js"></script>
  <script type="application/javascript"
          src="../role.js"></script>
  <script type="application/javascript"
          src="../layout.js"></script>
  <script type="application/javascript"
          src="../browser.js"></script>

  <script type="application/javascript">
    function doTest()
    {
      var tabDocument = currentTabDocument();
      var paragraphNode = tabDocument.getElementById("paragraph");
      var paragraph = getAccessible(paragraphNode, [nsIAccessibleText]);
      var offset = 64; // beginning of 4th stanza

      var [x, y] = getPos(paragraph);
      var [docX, docY] = getPos(tabDocument);

      paragraph.scrollSubstringToPoint(offset, offset,
                                       COORDTYPE_SCREEN_RELATIVE, docX, docY);
      testTextPos(paragraph, offset, [x, docY], COORDTYPE_SCREEN_RELATIVE);

      zoomDocument(tabDocument, 2.0);

      paragraphNode = tabDocument.getElementById("paragraph2");
      paragraph = getAccessible(paragraphNode, [nsIAccessibleText]);
      offset = 52; // // beginning of 4th stanza
      var [x, y] = getPos(paragraph);
      paragraph.scrollSubstringToPoint(offset, offset,
                                       COORDTYPE_SCREEN_RELATIVE, docX, docY);
      testTextPos(paragraph, offset, [x, docY], COORDTYPE_SCREEN_RELATIVE);

      closeBrowserWindow();
      SimpleTest.finish();
    }

    var url = "data:text/html,<html>" +
      "<meta http-equiv='Content-Type' content='text/html;charset=utf-8' />" +
      "<body>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br><hr>" +
      "<p id='paragraph'>" +
      "  Пошел котик на торжок<br>" +
      "  Купил котик пирожок<br>" +
      "  Пошел котик на улочку<br>" +
      "  Купил котик булочку<br>" +
      "</p>" +
      "<hr><br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br><hr>" +
      "<p id='paragraph2'>" +
      "  Самому ли съесть<br>" +
      "  Либо Сашеньке снесть<br>" +
      "  Я и сам укушу<br>" +
      "  Я и Сашеньке снесу<br>" +
      "</p>" +
      "<hr><br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "<br><br><br><br><br><br><br><br><br><br>" +
      "</body></html>";

    SimpleTest.waitForExplicitFinish();
    openBrowserWindow(doTest,
                      url,
                      { left: 0, top: 0, width: 600, height: 600 });
  </script>

</head>
<body>

  <a target="_blank"
     href="https://bugzilla.mozilla.org/show_bug.cgi?id=727942"
     title="scrollSubstringToPoint is broken when page is zoomed">
    Mozilla Bug 727942
  </a>
  <p id="display"></p>
  <div id="content" style="display: none"></div>
  <pre id="test">
  </pre>
</body>
</html>
